<?php

namespace app\model;

use support\Model;

/**
 * 商家商品订单模型
 * 
 * 用于管理商家商品订单相关数据
 * 包含用户ID、商品ID、订单金额、订单状态等信息
 * 
 * @property int $id 主键ID
 * @property int|null $user_id 用户ID
 * @property int|null $biz_goods_id 商家商品ID
 * @property float|null $money 订单金额
 * @property string|null $status 订单状态
 * @property int|null $paid_at 支付时间
 * @property int $created_at 创建时间
 * @property int $quantity 购买数量
 * @property string|null $phone 联系电话
 * @property int $updated_at 更新时间
 * @property int|null $deleted_at 删除时间
 * @property string|null $transaction_id 交易流水号
 * @property int|null $biz_id 商家ID
 * @property string|null $out_trade_no 商户订单号
 */
class BizGoodsOrderModel extends Model
{
    const STATUS = [
        'unpay' => '待支付',
        'pay' => '已支付'
    ];
    /**
     * 关联表名
     * @var string
     */
    protected $table = 'biz_goods_order';

    /**
     * 主键
     * @var string
     */
    protected $primaryKey = 'id';

    /**
     * 关闭自动时间戳
     * @var bool
     */
    public $timestamps = false;

    /**
     * 可批量赋值字段
     * @var array
     */
    protected $fillable = [];

    /**
     * 隐藏字段
     * @var array
     */
    protected $hidden = [
    ];

    protected $guarded = [];

    /**
     * 关联商家商品
     * @return \Illuminate\Database\Eloquent\Relations\BelongsTo
     */
    public function bizGoods()
    {
        return $this->belongsTo(BizGoodsModel::class, 'biz_goods_id', 'id');
    }

    /**
     * 关联用户
     * @return \Illuminate\Database\Eloquent\Relations\BelongsTo
     */
    public function user()
    {
        return $this->belongsTo(UserModel::class, 'user_id', 'id');
    }

    /**
     * 关联商家
     * @return \Illuminate\Database\Eloquent\Relations\BelongsTo
     */
    public function biz()
    {
        return $this->belongsTo(BizModel::class, 'biz_id', 'id');
    }


} 